home *** CD-ROM | disk | FTP | other *** search
/ SGI Developer Toolbox 6.1 / SGI Developer Toolbox 6.1 - Disc 4.iso / src / tutorials / geometer / Theorems / junk / g2.T < prev    next >
Encoding:
Text File  |  1994-08-02  |  4.4 KB  |  93 lines

  1. .geometry "version 0.1";
  2. //involG.T, 7.12.91, R. De Vogelaere, started  Dec. 6, 1991
  3. .text("from Euclidean to Involutive Geometry");
  4. .text("the triangle {A0,A1,A2}, barycenter M and orthocenter M~", .L0);
  5. .text("medians and complementary triangle", .yellow, .L1);
  6. .text("altitudes, orthic triangle, orthic line", .cyan, .L2);
  7. .text("line of Euler", .blue, .L2);
  8. .text("circle of Brianchon-Poncelet", .yellow, .L3);
  9. .text("mediatrices, circumcenter", .magenta, .L4);
  10. .text("(orthic triangle), tangential triangle", .L5);
  11. .text("circumcircle", .green, .L5);
  12. .text("posit. of baryc.(1) and orthoc.(2) for a Minkowskian geometry", .red, .L14);
  13. .text("posit. of barycenter and orthocenter for the geom. of Euclid", .blue, .L15);
  14. v1 = .free(-0.371968, 0.549865, .L0, .L1, .L2, .L3, .L4, .L5, "A0");
  15. v2 = .free(-0.469003, -0.0889488, .L0, .L1, .L2, .L3, .L4, .L5, "A1");
  16. v3 = .free(0.603774, -0.0808625, .L0, .L1, .L2, .L3, .L4, .L5, "A2");
  17. v4 = .free(-0.0727763, 0.113208, .cyan, .L0, .L1, .L2, .L3, .L4, .L5, "M");
  18. v5 = .free(-0.369272, 0.0700809, .L0, .L1, .L2, .L3, .L4, .L5, "M~");
  19. // if last coordinates are large, e.g. 20., 25., then example of Gallilean geom.
  20. // for the general case M~ is on the ideal line
  21. l3 = .l.vv(v2, v3, .L0, .L1, .L2, .L3, .L4, .L5, .longline);
  22. l4 = .l.vv(v3, v1, .L0, .L1, .L2, .L3, .L4, .L5, .longline);
  23. l5 = .l.vv(v1, v2, .L0, .L1, .L2, .L3, .L4, .L5, .longline);
  24. l6 = .l.vv(v1, v4, .yellow, .L1, .longline);
  25. l7 = .l.vv(v2, v4, .yellow, .L1, .longline);
  26. l8 = .l.vv(v3, v4, .yellow, .L1, .longline);
  27. l9 = .l.vv(v1, v5, .cyan, .L2, .L4, .longline);
  28. l10 = .l.vv(v2, v5, .cyan, .L2, .L4, .L5, .longline);
  29. l11 = .l.vv(v3, v5, .cyan, .L2, .L4, .L5, .longline);
  30. v6 = .v.ll(l6, l3, .L1, .L3, .L4, .plus);
  31. v7 = .v.ll(l3, l9, .L2, .L3, .plus);
  32. v8 = .v.ll(l7, l4, .L1, .L3, .L4, .plus);
  33. v9 = .v.ll(l4, l10, .L2, .L3, .plus);
  34. v10 = .v.ll(l5, l8, .L1, .L3, .L4, .plus);
  35. v11 = .v.ll(l11, l5, .L2, .L3, .plus);
  36. conic1 = .conic.vvvvv(v6, v7, v8, v9, v10, .yellow, .L3);
  37. l1 = .l.vlperp(v2, l4, .invisible, .L15, .longline);
  38. l12 = .l.vlperp(v3, l5, .invisible, .L15, .longline);
  39. v12 = .v.vvmid(v3, v1, .invisible, .L15, .plus);
  40. v13 = .v.vvmid(v1, v2, .invisible, .L15, .plus);
  41. l13 = .l.vv(v2, v12, .invisible, .L15, .longline);
  42. l14 = .l.vv(v3, v13, .invisible, .L15, .longline);
  43. v14 = .v.ll(l1, l12, .blue, .L0, .L15, .plus);
  44. v15 = .v.ll(l14, l13, .blue, .L0, .L15, .plus);
  45. l15 = .l.vv(v8, v10, .yellow, .L1);
  46. l17 = .l.vv(v10, v6, .yellow, .L1);
  47. l18 = .l.vv(v6, v8, .yellow, .L1);
  48. v16 = .v.ll(l3, l15, .yellow, .L1, .plus);
  49. v17 = .v.ll(l15, l3, .yellow, .L1, .plus);
  50. v18 = .v.ll(l18, l5, .yellow, .L1, .plus);
  51. v19 = .v.ll(l17, l4, .yellow, .L1, .plus);
  52. l19 = .l.vv(v16, v18, .red, .L1, .L2, .L3, .L4, .L5, .longline);
  53. v20 = .v.ll(l9, l19, .yellow, .L4, .plus);
  54. v21 = .v.ll(l19, l10, .yellow, .L4, .plus);
  55. v23 = .v.ll(l11, l19, .yellow, .L4, .plus);
  56. l20 = .l.vv(v6, v20, .magenta, .L4, .longline);
  57. l21 = .l.vv(v8, v21, .magenta, .L4, .longline);
  58. l22 = .l.vv(v10, v23, .magenta, .L4, .longline);
  59. v24 = .v.ll(l22, l20, .magenta, .L4, "O");
  60. l23 = .l.vv(v1, v24, .magenta, .L5);
  61. l24 = .l.vv(v24, v2, .magenta, .L5);
  62. l25 = .l.vv(v24, v3, .magenta, .L5);
  63. l26 = .l.vv(v9, v11, .cyan, .L2, .L5);
  64. l27 = .l.vv(v11, v7, .cyan, .L2, .L5);
  65. l28 = .l.vv(v7, v9, .cyan, .L2, .L5);
  66. l29 = .l.vv(v4, v4, .cyan, .L5);
  67. v25 = .v.ll(l26, l19, .cyan, .L5, .plus);
  68. v26 = .v.ll(l19, l27, .cyan, .L5, .plus);
  69. v27 = .v.ll(l19, l28, .cyan, .L5, .plus);
  70. l30 = .l.vv(v1, v25, .magenta, .L5, .longline);
  71. l31 = .l.vv(v2, v26, .magenta, .L5, .longline);
  72. l32 = .l.vv(v3, v27, .magenta, .L5, .longline);
  73. l2 = .l.vv(v5, v24, .blue, .L1, .L2, .L4, .longline);
  74. v28 = .free(0.331536, -0.242588, .red, .L14, "1");
  75. v22 = .free(-0.169811, 0.0431267, .red, .L14, "2");
  76. v30 = .v.ll(l10, l30, .invisible, .L5, .plus);
  77. v31 = .v.ll(l31, l4, .invisible, .L5, .plus);
  78. l40 = .l.vv(v30, v31, .invisible, .L5);
  79. v32 = .v.ll(l40, l5, .invisible, .L5);
  80. l41 = .l.vv(v32, v3, .invisible, .L5);
  81. v43 = .v.ll(l41, l10, .magenta, .L5);
  82. v33 = .v.ll(l11, l30, .invisible, .L5, .plus);
  83. v34 = .v.ll(l32, l5, .invisible, .L5, .plus);
  84. l42 = .l.vv(v33, v34, .invisible, .L5);
  85. v35 = .v.ll(l42, l4, .invisible, .L5);
  86. l43 = .l.vv(v35, v2, .invisible, .L5);
  87. v36 = .v.ll(l43, l11, .magenta, .L5);
  88. conic2 = .conic.vvvvv(v1, v2, v3, v43, v36, .green, .L5);
  89. v29 = .v.ll(l26, l3, .cyan, .L2, .plus);
  90. v39 = .v.ll(l28, l5, .cyan, .L2, .plus);
  91. l16 = .l.vv(v29, v39, .cyan, .L2, .longline);
  92. v40 = .v.ll(l27, l4, .cyan, .L2, .plus);
  93.